#include <iostream>
#include <limits>

using std::cout;
using std::endl;
using std::cin;
// using std::istream;
// 复盘本周内容，消化吸收

// （1）预习讲义，了解流的四种状态以及标准输入流的使用，尝试实现一个健壮的接受int型数值输入的程序

// （2）预习流的缓冲机制，文件输入、文件输出流，字符串输入、字符串输出流

// （3）预习log4cpp，尝试理解官网示例的用法，自行探究


void test1(){
    // 检查流的状态
    while(!cin.good()){
        cin.clear();
    }
    int num = 0;
    cin >> num;

    // 清空流
    cin.ignore(SIZE_MAX, '\n');
    // 恢复流的状态
    while(!cin.good()){
        cin.clear();
    }

    cout << "num = " << num << endl;
    cout.operator<<("num = ").operator<<(num) << endl;
    cout << endl;
}

int main(void){
    test1();
    return 0;
}
